package gwt.trading.client;

/**
 * A contract for any object that needs to be drawn on canvas.
 * 
 * @author Iulian Costan (iulian.costan@gmail.com)
 */
public interface Drawable {

	/**
	 * Draw an object using given redenderer.
	 * 
	 * @param renderer
	 *            the renderer
	 */
	void draw(final Renderer renderer);

	/**
	 * Inject the drawing manager.
	 * 
	 * @param drawingManager
	 *            the drawing manager
	 */
	void setDrawingManager(DrawingManager drawingManager);

}
